home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 551-575 / disk_562 / intuisup / texts / source.lzh / texts.h < prev   
C/C++ Source or Header  |  1991-10-20  |  3KB  |  73 lines

  1.         /*************************************
  2.          *                                   *
  3.          *             Texts v2.0            *
  4.          *   by Torsten Jürgeleit in 05/91   *
  5.          *                                   *
  6.          *    Defines, structs and protos    *
  7.          *                                   *
  8.          *************************************/
  9.  
  10. #ifndef    TEXT_LIST_H
  11. #define    TEXT_LIST_H
  12.  
  13.     /* Defines */
  14.  
  15. #define TEXT_DATA_TYPE_TEXT        1
  16. #define TEXT_DATA_TYPE_NUM_UNSIGNED_DEC    2
  17. #define TEXT_DATA_TYPE_NUM_SIGNED_DEC    3
  18. #define TEXT_DATA_TYPE_NUM_HEX        4
  19. #define TEXT_DATA_TYPE_NUM_BIN        5
  20.  
  21. #define MAX_TEXT_DATA_TYPE        TEXT_DATA_TYPE_NUM_BIN
  22.  
  23. #define TEXT_DATA_FLAG_BOLD        (1 << 0)
  24. #define TEXT_DATA_FLAG_ITALIC        (1 << 1)
  25. #define TEXT_DATA_FLAG_UNDERLINED    (1 << 2)
  26. #define TEXT_DATA_FLAG_ABSOLUTE_POS    (1 << 3)   /* absolute text pos given - don't add border offsets */
  27. #define TEXT_DATA_FLAG_CENTER        (1 << 4)   /* center text with in window width */
  28. #define TEXT_DATA_FLAG_PLACE_LEFT    (1 << 5)   /* place text left of given left edge */
  29. #define TEXT_DATA_FLAG_COLOR2        (1 << 6)   /* use 2nd text render pen */
  30. #define TEXT_DATA_FLAG_COMPLEMENT    (1 << 7)   /* use complement of front and back pen */
  31. #define TEXT_DATA_FLAG_BACK_FILL    (1 << 8)   /* use draw mode JAM2 to fill text background with ri_BackPen */
  32. #define TEXT_DATA_FLAG_NO_PRINT        (1 << 9)   /* don't print text - only calc width */
  33.  
  34.     /* Defines for internal use only */
  35.  
  36. #define MAX_NUM_BUFFER_SIZE    34
  37. #define MAX_DEC_NUM_DIGITS    10
  38. #define MAX_HEX_NUM_DIGITS    8
  39. #define MAX_BIN_NUM_DIGITS    32
  40.  
  41.     /* Structures */
  42.  
  43. struct TextData {
  44.     USHORT    td_Type;
  45.     USHORT    td_Flags;
  46.     SHORT    td_LeftEdge;
  47.     SHORT    td_TopEdge;
  48.     BYTE    *td_Text;
  49.     struct TextAttr  *td_TextAttr;
  50. };
  51.     /* Global prototypes */
  52.  
  53. VOID   display_texts(struct RenderInfo  *ri, struct Window  *win,
  54.             struct TextData  *td, SHORT hoffset, SHORT voffset);
  55. USHORT print_text(struct RenderInfo  *ri, struct Window  *win, BYTE *text,
  56.            USHORT left_edge, USHORT top_edge, USHORT type, USHORT flags,
  57.                            struct TextAttr  *text_attr);
  58. USHORT convert_unsigned_dec(ULONG num, BYTE *buffer);
  59. USHORT convert_signed_dec(LONG num, BYTE *buffer);
  60. USHORT convert_hex(ULONG num, BYTE *buffer);
  61. USHORT convert_bin(ULONG num, BYTE *buffer);
  62.  
  63.     /* Global pragmas */
  64.  
  65. #pragma regcall(display_texts(a0,a1,a2,d0,d1))
  66. #pragma regcall(print_text(a0,a1,a2,d0,d1,d2,d3,a3))
  67. #pragma regcall(convert_unsigned_dec(d0,a0))
  68. #pragma regcall(convert_signed_dec(d0,a0))
  69. #pragma regcall(convert_hex(d0,a0))
  70. #pragma regcall(convert_bin(d0,a0))
  71.  
  72. #endif
  73.